﻿using System;

namespace Borg
{
    [AttributeUsage(AttributeTargets.Interface, AllowMultiple = true, Inherited = true)]
    public sealed class ParamAttribute : Attribute
    {
        public object DefaultValue;
        public readonly string Name;
        internal readonly Type Type;

        public ParamAttribute(string name, Type type)
            : this(name, type, ParamDefinition.NoDefaultValue)
        { }

        public ParamAttribute(string name, Type type, object defaultValue)
        {
            Name = name;
            Type = type;
            DefaultValue = defaultValue;
        }
    }
}

